/**
 * 
 * @author Joao Borrego, Nara Fanha
 * @version 07-12-2013
 *
 */

public class Peao {
	
	private int casa; //casa atual que o peao ocupa
	private boolean jaJogou;
	private boolean jaTerminou;
	
	

	public static final int INI = 0; //casa inicial do peao
	
	/**
	 * Construtor
	 * @param int id 
	 */
	public Peao() { 
		
		this.casa = INI;
		this.jaJogou = false;
		this.jaTerminou = false;
		
	}
	
	/**
	 * Este metodo e para ser chamado no inicio do jogo
	 * @param casa
	 * @param jaJogou
	 */
	public void carregarPeao(int casa, boolean jaJogou)
	{
		this.casa = casa;		
		this.jaJogou = jaJogou;
	}
	
	
	/**
	 * Este metodo faz o peao avancar
	 * @param int dado
	 */
	public void avanca(int dado) 
	{
		this.casa += dado;
		this.jaJogou = true;
	}
	
	
	/**
	 * Este metodo devolve a posicao do peao
	 * @return int casa
	 */
	public int posicao() 
	{
		return this.casa;
	}
	
	
	/**
	 * Este metodo devolve se o peao ja jogou
	 * @return boolean jaJogou
	 */
	public boolean getJogou() 
	{
		return this.jaJogou;
	}
	
	
	/**
	 * Este metodo coloca o peao a true, estando entao pronto para ser jogado
	 */
	public void setJogou() 
	{
		this.jaJogou = true;
	}
	
	
	/**
	 * Este metodo devolve se o jogador ganhou, ou seja, tem todos os peoes na casa final
	 * @return
	 */
	public boolean getTerminou() {
		return jaTerminou;
	}
	
	
	/**
	 * Este metodo muda o estado de se o jogador ja terminou o jogo para true
	 */
	public void setTerminou() {
		jaTerminou = true;
	}
	
	
	
	
}
